package model

import (
	"time"
)

// Permission 表示权限结构，支持多级结构（父子孙）
type Permission struct {
	ID        uint64    `gorm:"primaryKey" json:"id"`                          // 权限ID
	Name      string    `gorm:"type:varchar(50);not null" json:"name"`         // 权限名称
	Code      string    `gorm:"type:varchar(100);unique;not null" json:"code"` // 权限标识码（唯一）
	ParentID  uint64    `gorm:"default:0" json:"parent_id"`                    // 父级权限ID
	Path      string    `gorm:"type:varchar(255)" json:"path"`                 // 路径（用于前端路由）
	Method    string    `gorm:"type:varchar(10)" json:"method"`                // 请求方法
	CreatedAt time.Time `json:"created_at"`                                    // 创建时间
	UpdatedAt time.Time `json:"updated_at"`                                    // 更新时间
}
